package com.ruoyi.backend.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 消息通知对象 t_message_notice
 *
 * @author wjr
 * @date 2025-09-23
 */
public class MessageNotice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 通知id */
    private Integer id;

    /** 消息标题 */
    @Excel(name = "消息标题")
    private String messageTitle;

    /** 消息内容 */
    @Excel(name = "消息内容")
    private String messageContent;

    /** 消息类型：1=系统消息，2=客户投诉，3=员工请求 */
    @Excel(name = "消息类型：1=系统消息，2=客户投诉，3=员工请求")
    private Integer messageType;

    /** 是否已读：0=是，1=否 */
    @Excel(name = "是否已读：0=是，1=否")
    private Integer isRead;

    /** 给某个用户 */
    @Excel(name = "给某个用户")
    private Integer toUserId;

    /** 用户名称 */
    @Excel(name = "用户名称")
    private String toUserName;

    /** 读取时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "读取时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date readTime;

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }

    public void setMessageTitle(String messageTitle)
    {
        this.messageTitle = messageTitle;
    }

    public String getMessageTitle()
    {
        return messageTitle;
    }

    public void setMessageContent(String messageContent)
    {
        this.messageContent = messageContent;
    }

    public String getMessageContent()
    {
        return messageContent;
    }

    public void setMessageType(Integer messageType)
    {
        this.messageType = messageType;
    }

    public Integer getMessageType()
    {
        return messageType;
    }

    public void setIsRead(Integer isRead)
    {
        this.isRead = isRead;
    }

    public Integer getIsRead()
    {
        return isRead;
    }

    public void setToUserId(Integer toUserId)
    {
        this.toUserId = toUserId;
    }

    public Integer getToUserId()
    {
        return toUserId;
    }

    public void setToUserName(String toUserName)
    {
        this.toUserName = toUserName;
    }

    public String getToUserName()
    {
        return toUserName;
    }

    public void setReadTime(Date readTime)
    {
        this.readTime = readTime;
    }

    public Date getReadTime()
    {
        return readTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("messageTitle", getMessageTitle())
                .append("messageContent", getMessageContent())
                .append("messageType", getMessageType())
                .append("isRead", getIsRead())
                .append("toUserId", getToUserId())
                .append("toUserName", getToUserName())
                .append("createTime", getCreateTime())
                .append("readTime", getReadTime())
                .toString();
    }
}
